package com.webcat.service;

import com.webcat.entity.SseResponse;
import com.webcat.entity.vo.TopicVo;
import org.springframework.ai.chat.prompt.Prompt;
import org.springframework.ai.tool.ToolCallback;
import reactor.core.publisher.Flux;

import java.util.List;

public interface QuestionService {

    String start();

    /**
     * @param chatId
     * @param message
     * @param datasetId
     * @param questionType 1:选择题，2:判断题
     * @param multiConversation
     * @return
     */
    Flux<SseResponse<Object>> streamChat(String chatId, String message, String datasetId, String questionType, Boolean multiConversation);

    String chat(String chatId, String message, String datasetId, String questionType, Boolean multiConversation);

    List<TopicVo> editQuestion(String chatId, String message);
}
